#-------------------------------------------------
#
# Project created by QtCreator 2023-04-04T08:53:16
#
#-------------------------------------------------
#MW32
QT       += core gui widgets
QT       += network
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = TMRobotNavi
TEMPLATE = app

VERSION = 0.5
DEFINES += APP_VERSION=\\\"$$VERSION\\\"

RC_ICONS = Robot.ico

CONFIG(debug, debug|release){
    win32:DESTDIR = ../release
    unix:!macx:DESTDIR = ./release
}
else {
    win32:DESTDIR = ../release
    unix:!macx:DESTDIR = ./release
}

# The following define makes your compiler emit warnings if you use
# any feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

CONFIG += c++17

SOURCES += \
        Logger/tmlogger.cpp \
        Tcp/maptcpsocket.cpp \
        UI/wgtpara.cpp \
        directedgraph.cpp \
        dlgwgt/dlgimupara.cpp \
        dlgwgt/dlgreporterror.cpp \
        dlgwgt/dlgvisionpara.cpp \
        json/json_reader.cpp \
        json/json_value.cpp \
        json/json_writer.cpp \
        map/mapedit.cpp \
        SSH/securefileuploader.cpp \
        SSH/ssh.cpp \
        SSH/tm_sshconnectwgt.cpp \
        Tcp/tcpsocket.cpp \
        TmItem/tm_pointlineitem.cpp \
        TmItem/tm_rectitem.cpp \
        TmItem/tm_robotitem.cpp \
        dlgwgt/dlgcarpara.cpp \
        dlgwgt/dlglaserpara.cpp \
        main.cpp \
        mainwindow.cpp \
        mygraphicsview.cpp \
        publicshare.cpp

HEADERS += \
        Logger/tmlogger.h \
        Tcp/maptcpsocket.h \
        UI/wgtpara.h \
        directedgraph.h \
        dlgwgt/dlgimupara.h \
        dlgwgt/dlgreporterror.h \
        dlgwgt/dlgvisionpara.h \
        json/allocator.h \
        json/assertions.h \
        json/config.h \
        json/forwards.h \
        json/json.h \
        json/json_features.h \
        json/json_tool.h \
        json/reader.h \
        json/value.h \
        json/version.h \
        json/writer.h \
        map/mapedit.h \
        SSH/securefileuploader.h \
        SSH/ssh.h \
        SSH/tm_sshconnectwgt.h \
        Tcp/tcpsocket.h \
        TmItem/tm_pointlineitem.h \
        TmItem/tm_rectitem.h \
        TmItem/tm_robotitem.h \
        bezier/bezier.h \
        common.h \
        dlgwgt/dlgcarpara.h \
        dlgwgt/dlglaserpara.h \
        mainwindow.h \
        mygraphicsview.h \
        publicshare.h

FORMS += \
        dlgwgt/dlgcarpara.ui \
        dlgwgt/dlgimupara.ui \
        dlgwgt/dlglaserpara.ui \
        dlgwgt/dlgreporterror.ui \
        dlgwgt/dlgvisionpara.ui \
        mainwindow.ui

CONFIG += link_pkgconfig
PKGCONFIG += opencv4
unix:!macx: QMAKE_RPATHDIR += $$PWD/lib/QSSH/linux

INCLUDEPATH = $$PWD/include



win32:CONFIG(release, debug|release): LIBS += -L$$PWD/lib/QSSH -lQSsh
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/lib/QSSH -lQSshd

unix:!macx: LIBS += -L$$PWD/lib/QSSH/linux/ -lBotan
unix:!macx: LIBS += -L$$PWD/lib/QSSH/linux/ -lQSsh

win32:LIBS += -L$$PWD/lib/opencv -llibopencv_core480.dll -llibopencv_imgproc480

unix:!macx:INCLUDEPATH += /usr/include/opencv4/opencv2
unix:!macx:LIBS += -L/usr/lib/x86_64-linux-gnu -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_imgcodecs -lopencv_videoio -lopencv_stitching -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dnn_superres -lopencv_dpm -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hdf -lopencv_hfs -lopencv_img_hash -lopencv_line_descriptor -lopencv_quality -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_shape -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_dnn -lopencv_plot -lopencv_ml -lopencv_videostab -lopencv_viz -lopencv_ximgproc -lopencv_video -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_features2d -lopencv_flann -lopencv_xphoto -lopencv_photo -ldl -lz -ltbb


# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

RESOURCES += \
    icon.qrc


include ($${PWD}/yaml/yaml.pri)
